OCR是指利用光學技術和計算機技術,對文本資料的圖像文件進行分析辨識處理,獲取文字及版面資訊的過程,最初用於印刷體文字辨識,例如郵政系統的郵遞區號數字辨識,便於進行郵件自動分揀,以節省時間與人力成本。隨著掃描機、數位相機及手機等光學設備的快速發展,OCR應用領域日益廣泛,逐漸擴及車牌辨識、證件辨識、票據辨識等場景。
在這個資訊爆炸的時代,許多古書、古籍所保存下來的經典,乃至其背後代代流傳的文化意涵,顯得格外彌足珍貴。為了解決古籍保存不易的問題,古籍數位化一直以來都是許多跨學科的專家、學者努力投入的領域。而OCR,正是辨識古籍文字、進而將古籍內容進行數位化儲存管理的關鍵技術。然而,在古籍文字辨識的領域,OCR卻無法如同辨識現代印刷字體那樣來得迅速而準確,也大幅地提升了古籍數位化的技術門檻。
OCR辨識技術痛點
事實上,各界對於古籍數位化的嘗試由來已久,但難度大且成本相當高。主要困難點在於,中文古籍文字類型、字體多樣,外加流傳過程中出現的各類損壞,使得久經風霜的古籍辨識難度相對於現代的印刷字體來說要高上許多。
中文古籍光是「載體」就相當多樣。紙、書冊、布匹、竹簡、木頭、石碑,甚至是龜甲、獸骨等「甲骨」材質等等,幾乎所有能寫、能刻得上字的載體都被古人留了字跡,就算同樣都寫在紙上,有些文字是從上到下,有些是從右到左、或從左到右,或是主文旁還有各式各樣的批註,大大提高辨識的難度。
字體對於OCR辨識來說也是一個問題。許多字在印刷體和手寫的隸書、楷書、草書、行書上的寫法幾乎完全不一樣;不僅兩個人寫的同一個字寫法不同, 同一個人寫的同一個字也有許多種寫法。換句話說,「回字的四種寫法」對於需要仰賴大量資料來訓練人工智慧(AI)的OCR來說,便成了一道瓶頸。
OCR技術辨識準確率的提升
由於缺乏充足的中文訓練數據,現有AI的古籍辨識能力還未能達到業界實際應用的標準,過往古籍OCR辨識方法十分仰賴專業人員逐字標註、人工校驗,日漸提高的人工成本已成阻礙古籍數位化的重要原因。但今時今日很難找到眾多認得古籍文字的專家來展開工程浩大且繁雜的人工輸入和檢查、校閱工作,導致古籍數位化始終無法形成規模效應,技術進展較為緩慢。
以筆者任職的阿里巴巴達摩院為例,先前即已發展出完整的OCR技術能力,主要用於解決現代場景中的文字辨識需求,比如檔案、證件、表單等等的辨識與應用。然而,如同前文所提及,古籍辨識與現代場景的文字辨識存在相當程度的差異,在現代場景下辨識準確率超過99%的演算法,應用到古籍辨識上的辨識率卻不到40%。
基於上述原因,達摩院在投入古籍文字辨識領域時,採用的技術並沒有使用傳統行檢測、列檢測的OCR的模式,而是回歸基礎以「單字辨識」來逐步提高OCR 演算法的準確率。解決過往辨識率低的方式,是透過視覺手段讓機器學習到何謂「單字」,了解「字」和「字」之間的差異。透過這樣的技術手段,解決了古籍中文字的聚合問題,讓機器得以將古籍中的文字一個個拆開。解決上述的聚合問題之後,再由古籍專家和相關領域的學生進行辨識檢查,採用「非監督式學習」的方式來訓練機器,也就是將同一個字的不同寫法聚合在一起,再讓機器優化演算法後得到字形的表徵,進一步提升文字聚合的效果。而這,也是此概念首次應用在古籍數位化的領域。
簡單地說,先打造一套基礎感知模組來蒐集文字特徵,完成後進行單字聚類,再由古籍專家回饋給系統,來告訴機器什麼做對了?什麼做錯了?而這個回饋的資訊回到系統後台後,會進一步更新表徵模型、產生相應的單字聚類結果,再依此回饋給古籍專家,形成正循環的工作模式。
在標註文字與訓練系統的小樣本主動學習過程中,亦分為單字辨識、單字檢測、版式理解等三個不同的模型,透過不同面向來幫助古籍辨識引擎持續優化。
例如,在古籍中出現不同寫法的「匯」、「滙」或是簡體字的「汇」,對於多數人來說是同一個字,但對於OCR 來說並非如此。機器對圖像的辨識分成兩個步驟:第一步是「所見即所得」,匯、滙、汇對於機器來說是三個不同的形狀, 必須被標記成三個字類;其次,才是將它們三者和「匯」聯繫在一起。僅僅是一個字的不同寫法就足以造成演算法的誤解,更遑論不同載體、字體、草書甚至是異體字的差異。
然而,不可避免的是,在演算法訓練的前期,這仍然是一個繁瑣的人力工程。不過,隨著古籍單字標註的資料量越來越大,也越來越能感受到演算法優化與學習的成長幅度。
中文OCR應用價值
一般來說,古籍數位化完整流程分為採集、數位化生產與應用三大環節。所謂採集,就是由紙質書轉變為電子掃描版;數位化生產是將電子掃描版變為文字版; 至於應用,則是把文字版變為古籍研學系統,涵蓋檢索、字典、知識圖譜等功能。而達摩院所做的工作,主要集中於數位化生產與應用兩個環節。
在上述提及的基礎上,達摩院技術團隊與學界專家聯手研發了一套全新的古籍辨識系統,利用單字檢測、無監督單字聚類、小樣本學習、主動學習等機器學習方法,構造了一套能一邊辨識古籍、一邊訓練模型的系統,在首批數位化的20萬頁古籍上,達到了97.5%的辨識準確率。這套人機互動的辨識方案,其效率比人工輸入效率提升近30倍,並且大大降低了對輸入人員的專業要求。
當然,古籍數位化只是不同型態中文字OCR辨識的一個開端,中文OCR辨識的應用遠遠不止於此。現今的OCR技術已發展到能跨產業應用的技術架構,形成完整的圖像文字定位、文字辨識和文字理解的技術體系,提供高效能、高穩定性的文字識別服務,其中一項關鍵應用便是讓網路世界變得更加「無障礙」。
對於視障者來說,使用智慧型手機App 時常需仰賴手機內建的朗讀功能,現今的OCR技術已經發展到能辨識圖片中的資訊與文字內容,甚至應用在電商平台的「聽圖購物」功能中,精準地把圖片中的資訊轉為語音,讓視障用戶能夠靠聽力購物。
OCR在日常生活中的應用同樣廣泛,其辨識印刷文字、數字的穩定性與準確度已經足以應用於汽車、金融、保險、物流、醫療、電商等等諸多領域,幫助企業省去人工輸入、處理、審核資料的種種繁複程序。舉例來說,許多收費停車場採用車牌自動辨識系統,車主毋須手動取卡即可進、離場;或是在網路上申辦特定服務時,使用手機拍照即可自動辨識信用卡號、證件上的文字等等資訊,省去資料一筆一筆手動輸入的繁瑣程序。甚至是快遞寄件時掃描自動填入地址、或是企業快速建檔單據、保單等等,都是OCR文字辨識能為企業帶來助益的最好實例。隨著中文古籍、手寫、不同字體的OCR訓練資料更多元、更完善,筆者也期待,未來能看見OCR技術應用於更廣泛的領域和市場中,發揮這項技術潛力的商業價值。
(本文作者為阿里巴巴達摩院視覺實驗室負責人)